package validate

import (
	"gin/common"
	"github.com/Gre-Z/common/jtime"
)

type AddDictWordWrapper struct {
	Data AddDictWord `json:"data" binding:"required"`
}

type UpdateDictWordWrapper struct {
	Data UpdateDictWord `json:"data" binding:"required"`
}
type UpdateDictWord struct {
	Id         uint64 `json:"id" binding:"required"`
	ExtendCode string `json:"extend_code" binding:"required"`
}

type AddDictWord struct {
	Id         uint64           `json:"id"`
	DictId     uint64           `json:"dict_id"`
	Word       string           `json:"word" binding:"required"`
	Pos        string           `json:"pos" binding:"required"`
	ExtendCode string           `json:"extend_code"`
	Created    jtime.TstampTime `json:"created"`
	Updated    jtime.TstampTime `json:"updated"`
}

type SelectDictWordQuery struct {
	Param common.QueryParam `json:"param" binding:"required"`
}

type DeleteDictWordParam struct {
	Param common.Filter `json:"param" binding:"required"`
}

type BatchUpdateDictWord struct {
	Param      common.QueryParam `json:"param" binding:"required"`
	ExtendCode string            `json:"extend_code" binding:"required"`
}

type BatchAddDictWordWrapper struct {
	Data BatchAddDictWord `json:"data" binding:"required"`
}

type BatchAddDictWord struct {
	DictId     uint64   `json:"dict_id" binding:"required"`
	Words      []string `json:"words" binding:"required"`
	Pos        string   `json:"pos" binding:"required"`
	ExtendCode string   `json:"extend_code"`
}
